home *** CD-ROM | disk | FTP | other *** search
- package com.extensibility.xa;
-
- import com.extensibility.app.UI;
- import com.extensibility.rock.RDialog;
- import com.extensibility.xml.ExtraMetaDataUIIntf;
- import com.extensibility.xml.MetaPropHash;
- import java.awt.BorderLayout;
- import java.awt.Component;
- import java.awt.Container;
- import java.awt.Dialog;
- import java.awt.Font;
- import java.awt.Frame;
- import java.awt.GridBagConstraints;
- import java.awt.GridBagLayout;
- import java.awt.Window;
- import java.util.Hashtable;
- import javax.swing.BorderFactory;
- import javax.swing.Box;
- import javax.swing.JButton;
- import javax.swing.JComponent;
- import javax.swing.JDialog;
- import javax.swing.JLabel;
- import javax.swing.JPanel;
- import javax.swing.JScrollPane;
- import javax.swing.JTabbedPane;
- import javax.swing.JTextArea;
- import javax.swing.JTextField;
- import javax.swing.border.EmptyBorder;
-
- public class SchemaInfo extends RDialog {
- Frame parent;
- JLabel lblNSPrompt;
- JTextArea fldNS;
- JLabel lblPrefix;
- JTextArea fldPrefix;
- JTextArea txtStats;
- JButton btnOK;
- JButton btnCancel;
- JTextField[] metaPropFld;
- JTabbedPane tabPane;
- SchemaDoc doc;
- boolean confirmed;
-
- public SchemaInfo(Frame var1, SchemaDoc var2) {
- super(var1, true);
- this.doc = var2;
- this.prepare();
- }
-
- private String getStats() {
- StringBuffer var1 = new StringBuffer();
- String var2 = System.getProperty("line.separator");
- Class[] var3 = new Class[]{Class.forName("com.extensibility.xml.ElementDeclaration"), Class.forName("com.extensibility.xml.AttributeDeclaration"), Class.forName("com.extensibility.xml.InternalGEDeclaration"), Class.forName("com.extensibility.xml.ExternalGEDeclaration"), Class.forName("com.extensibility.xml.InternalPEDeclaration"), Class.forName("com.extensibility.xml.ExternalPEDeclaration"), Class.forName("com.extensibility.xml.DataTypeDeclaration"), Class.forName("com.extensibility.xml.NamespaceDeclaration"), Class.forName("com.extensibility.xml.ExternalSubset"), Class.forName("com.extensibility.xml.NotationDeclaration"), Class.forName("com.extensibility.xml.ProcessingInstruction")};
- String[] var4 = new String[]{"com.extensibility.xml.ElementDeclaration", "com.extensibility.xml.AttributeDeclaration", "com.extensibility.xml.InternalGEDeclaration", "com.extensibility.xml.ExternalGEDeclaration", "com.extensibility.xml.InternalPEDeclaration", "com.extensibility.xml.ExternalPEDeclaration", "com.extensibility.xml.DataTypeDeclaration", "com.extensibility.xml.NamespaceDeclaration", "com.extensibility.xml.ExternalSubset", "com.extensibility.xml.NotationDeclaration", "com.extensibility.xml.ProcessingInstruction"};
-
- for(int var5 = 0; var5 < var3.length; ++var5) {
- int var6 = this.doc.getCount(var3[var5]);
- if (this.doc.isSupported(var3[var5])) {
- String var7 = UI.getString(var6 == 1 ? var4[var5] : String.valueOf(var4[var5]).concat(String.valueOf("s")));
- var1.append(String.valueOf(String.valueOf(String.valueOf(String.valueOf(" ").concat(String.valueOf(var6))).concat(String.valueOf(" "))).concat(String.valueOf(var7))).concat(String.valueOf(var2)));
- }
- }
-
- return var1.toString();
- }
-
- public void prepare() {
- ((Dialog)this).setTitle(UI.getString("dialog.schema.info.title"));
- this.tabPane = new JTabbedPane();
- Font var1 = UI.getAppFont();
- if (var1 != null) {
- this.tabPane.setFont(var1);
- }
-
- this.lblNSPrompt = new JLabel(UI.getString("dialog.schema.info.ns.prompt"));
- String var2 = this.doc.getNamespace() == null ? "" : this.doc.getNamespace().toSource();
- this.fldNS = UI.createTextArea(true);
- this.fldNS.setRows(2);
- this.fldNS.setBorder(UI.createTextField().getBorder());
- this.fldNS.setText(var2);
- this.lblPrefix = new JLabel(UI.getString("dialog.schema.info.prefix.prompt"));
- String var3 = this.doc.getSchemaPrefix() == null ? "" : this.doc.getSchemaPrefix();
- this.fldPrefix = UI.createTextArea(true);
- this.fldPrefix.setBorder(UI.createTextField().getBorder());
- this.fldPrefix.setText(var3);
- this.txtStats = UI.createTextArea(false);
- this.txtStats.setBorder(BorderFactory.createTitledBorder(UI.getString("dialog.schema.info.stat.title")));
- this.txtStats.setBackground(((Component)this).getBackground());
- this.txtStats.setText(this.getStats());
- this.txtStats.setLineWrap(false);
- this.btnOK = new JButton(UI.getString("dialog.ok"));
- this.btnOK.addActionListener(new 1(this));
- this.btnOK.setMnemonic(UI.getMnemonic("dialog.ok"));
- this.btnCancel = new JButton(UI.getString("dialog.cancel"));
- this.btnCancel.addActionListener(new 2(this));
- this.btnCancel.setMnemonic(UI.getMnemonic("dialog.cancel"));
- ((JDialog)this).getContentPane().setLayout(new BorderLayout());
- JPanel var4 = new JPanel(new GridBagLayout());
- ((JComponent)var4).setAlignmentY(0.0F);
- GridBagConstraints var5 = new GridBagConstraints();
- var5.fill = 2;
- var5.weightx = (double)1.0F;
- var5.anchor = 17;
- var5.insets.left = 12;
- var5.insets.right = 12;
- var5.insets.top = 4;
- var5.gridy = 0;
- ((Container)var4).add(this.lblPrefix, var5);
- var5.gridy = 1;
- var5.weightx = (double)0.5F;
- ((Container)var4).add(this.fldPrefix, var5);
- var5.gridy = 2;
- var5.weightx = (double)1.0F;
- ((Container)var4).add(this.lblNSPrompt, var5);
- var5.gridy = 3;
- ((Container)var4).add(this.fldNS, var5);
- JPanel var6 = new JPanel(new GridBagLayout());
- var5.gridy = 4;
- var5.fill = 1;
- var5.weighty = (double)1.0F;
- var5.insets.top = 8;
- var5.insets.bottom = 8;
- ((Container)var6).add(this.txtStats, var5);
- JScrollPane var7 = null;
- ExtraMetaDataUIIntf var8 = this.doc.getExtraMetaDataUI();
- int var9 = var8 == null ? 0 : var8.getExtraColumnCount(5);
- this.metaPropFld = new JTextField[var9];
- if (var9 > 0) {
- MetaPropHash var10 = this.doc.schema.getMetaPropHash();
- JPanel var11 = new JPanel(new GridBagLayout());
- var7 = new JScrollPane(var11);
- var5 = new GridBagConstraints();
- var5.fill = 2;
- var5.weightx = (double)1.0F;
- var5.anchor = 17;
- var5.insets.left = 12;
- var5.insets.right = 12;
- var5.insets.top = 4;
-
- for(int var12 = 0; var12 < var9; ++var12) {
- String var13 = var8.getColumnMetaProp(5, var12);
- String var14 = var8.getColumnName(5, var12);
- String var15 = (String)((Hashtable)var10).get(var13);
- ++var5.gridy;
- JLabel var16 = new JLabel(var14);
- ((Container)var11).add(var16, var5);
- ++var5.gridy;
- this.metaPropFld[var12] = UI.createTextField(var15);
- ((Container)var11).add(this.metaPropFld[var12], var5);
- }
- }
-
- JPanel var18 = new JPanel();
- ((Container)var18).add(this.btnOK);
- ((Container)var18).add(Box.createHorizontalStrut(8));
- ((Container)var18).add(this.btnCancel);
- this.tabPane.addTab("Namespace", var4);
- this.tabPane.addTab("Statistics", var6);
- if (var7 != null) {
- this.tabPane.addTab(var8.getExtensionsName(), var7);
- }
-
- this.tabPane.setBorder(new EmptyBorder(8, 8, 4, 8));
- ((JDialog)this).getContentPane().add(this.tabPane, "Center");
- ((JDialog)this).getContentPane().add(var18, "South");
- ((Window)this).pack();
- ((Component)this).setSize(354, 310);
- this.fldNS.requestFocus();
- ((RDialog)this).installEscape(this.btnCancel);
- ((RDialog)this).installDefault(this.btnOK);
- }
-
- public String getNamespace() {
- return this.confirmed ? this.fldNS.getText() : null;
- }
-
- public String getPrefix() {
- return this.confirmed ? this.fldPrefix.getText() : null;
- }
-
- public Hashtable getMetaProps() {
- Hashtable var1 = new Hashtable();
- if (!this.confirmed) {
- return null;
- } else {
- ExtraMetaDataUIIntf var2 = this.doc.getExtraMetaDataUI();
- if (var2 == null) {
- return var1;
- } else {
- for(int var3 = 0; var3 < this.metaPropFld.length; ++var3) {
- String var4 = var2.getColumnMetaProp(5, var3);
- String var5 = this.metaPropFld[var3].getText();
- if (var5 != null && var5.length() > 0) {
- var1.put(var4, var5);
- }
- }
-
- return var1;
- }
- }
- }
-
- public boolean confirmed() {
- return this.confirmed;
- }
- }
-